//https://leetcode.cn/problems/reverse-linked-list/
//反转链表
//给你单链表的头节点 head ，请你反转链表，并返回反转后的链表。
struct ListNode* reverseList(struct ListNode* head) {
    if(head == NULL)
    return head;
    
    struct ListNode* n1 = NULL, *n2 = head, *n3 = head->next;
    while(n2 != NULL)
    {
        n2->next = n1;
        n1 = n2;
        n2 = n3;
        if(n3 != NULL)
        n3 = n3->next;
    }
    return n1;
}